home *** CD-ROM | disk | FTP | other *** search
-
- Here is the second part of the information about the new DSP included
- in the PARSEC44...
-
- More information can be found at :
-
- http://www.ti.com/sc/docs/dsps/prodinfo/newc4x.htm
-
-
-
- -------------------------------------------------------------------------
-
- Contents of Part 4:
-
- operation
- memory aliasing
- communication ports
- DMA coprocessor
- central processing unit
- communication-port direction pin
- communication-port software reset
- NMI with bus-grant feature
- IDLE2 clock-stop power-down mode
- development tools
-
-
-
- operation
-
- The TMX320C44 has four on-chip communication ports for processor-to-processor communication with no external
- hardware and simple communication software. This allows connectivity with no external glue logic. The
- communication ports remove input / output bottlenecks, and the independent smart 6-channel DMA coprocessor is
- able to handle the CPU input / output burden.
-
- To fit the TMX320C44 into a 304-lead PQ2 package ( thermally enhanced plastic quad flatpack), two
- communication ports are removed and the external local and global address buses are reduced to 24 address
- lines each. In this case, both the bond pads and driver circuits are removed, decreasing die size and power
- consumption. Otherwise, functionality remains the same as the rest of the TMS320C4x family.
-
- The communication-port token and data-strobe control lines are internally connected to avoid spurious data,
- boot-up and power-consumption problems.
-
- The memory map for 'C44 is shown in FIgure 1.
-
-
-
- Figure 1. Memory Map for the TMS320C44
-
-
-
- memory aliasing
-
- The TMX320C44 offers global and local addresses of A0 - A23 and LA0 - LA23, giving an external address reach
- of (2 buses) x (2 **24) = 2**25 words. Since the internal address span of the TMX320C44 is 2**32 words,
- reading or writing to memory outside of the base-address region causes memory aliasing. Figure 2 shows how the
- memory pages overlap each other.
-
-
-
- Figure 2. Memory Alias
-
-
-
- communication ports
-
- The TMX320C44 contains four identical high-speed communication ports, each of which provides a bidirectional
- communication interface to other 'C4x devices and external peripherals. The key features of the communication
- ports are:
-
- Direct interprocessor communication and processor I / O
- 20-Mbytes / s bidirectional interface on each communication port for high-speed multiprocessor interface
- Port direction pin (CDIR) to ease interfacing
- Separate input and output 8-word deep FIFO buffers for processor-to-processor communication and I / O
- Automatic arbitration and handshaking for direct processor-to-processor connection
-
-
-
- DMA coprocessor
-
- The DMA coprocessor allows concurrent I / O and CPU processing for the highest sustained CPU performance. The
- key features of the DMA coprocessor are:
-
- Link pointers to allow DMA channels to autoinitialize without CPU intervention
- Parallel CPU operation and DMA transfers
- Six DMA channels to support for memory-to-memory data transfers
- Split mode operation doubles the available channels to twelve when data transfers to and from a
- communication port are required
-
-
-
- central processing unit
-
- The TMX320C44 CPU is configured for high-speed internal parallelism for the highest sustained performance. The
- key features of the CPU are:
-
- Eight operations / cycle
- 40- / 32-bit floating-point / integer multiply
- 40- / 32-bit floating-point / integer ALU operation
- Two data accesses
- Two address register updates
- Floating-point conversion
- Divide and square-root support
- 'C3x and 'C4x assembly-language compatibility
- Byte and halfword accessibility
-
-
-
- communication-port direction pin
-
- A port direction pin (CDIR1, CDIR2, CDIR4, CDIR5) is available for each 'C44 communication port. When the
- communication port is in the output mode, CDIRx is driven low. When the communication port is in the input
- mode, CDIRx is driven high. The truth table for two TMX320C44 devices is shown in the table below.
- Communication port 1 of CPUA is connected to communication port 4 of CPUB.
-
-
-
-
-
-
- communication-port software reset
-
- The input and output FIFO levels for a communication port can be flushed by writing at least two back-to-back
- values to its communication-port-software reset address as specified in Table 1.
-
- Table 1. Communication-Port Software Reset Address
-
-
-
-
- When used in conjunction with the communication-port direction pins and NMI- bus grant, an effective method of
- error detection and correction can be achieved. A subroutine showing how to reset communication port 1 is
- given below in Figure 3.
-
- ; ------------------------------------------------;
- ; IDLE2: Macro to generate ilde2 opcode ;
- ; ------------------------------------------------;
- IDLE2 .macro
- .word 06000001h
- .endm
- ; -------------------------------------------------;
- ; RESET1:Flushes FIFOs data for communication port 1;
- ;-------------------------------------------------;
- RESET1 push AR0 ;Save registers
- push R0 ;
- push RC ;
- ldhi 010h,AR0 ;Set AR0 to base address of COM 1
- or 050h,AR0 ;
- FLUSH: rpts 1 ;Flush FIFO data with back to back write
- sti R0,*+AR0(3) ;
- rpts 10 ;Wait
- nop ;
- ldi *+AR0(0),R0 ;Check for new data from other port
- and 01FE0h,R0 ;
- bnz FLUSH ;
- pop RC ;Restore registers
- pop R0 ;
- pop AR0 ;
- rets ;Return
-
- Figure 3. Example Software Subroutine Using IDLE2 and Communication-Port Software Reset
-
-
-
- NMI with bus-grant feature
-
- The TMX320C44 devices have a software-configurable feature that allows forcing the internal peripheral bus
- ready when the NMI- signal is asserted. The NMI- bus-grant feature is enabled when bits 19 and 18 of the
- status register (ST) are set to 10b. When enabled, a peripheral bus-grant signal is generated on the falling
- edge of NMI-. If NMI- is asserted and this feature is not enabled, the CPU stalls on access to the peripheral
- bus if it is not ready. A stall condition occurs when writing to a full output FIFO or reading an empty input
- FIFO. This feature is useful in correcting communication-port errors when used in conjunction with the
- communication-port software-reset feature.
-
-
-
- IDLE2 clock-stop power-down mode
-
- The TMX320C44 has a clock-stop mode, or power-down mode (IDLE2) to achieve extremely low power consumption.
- When an IDLE2 instruction is executed, the clocks are halted with H1 held high. ( Exiting IDLE2 requires
- asserting one of the IIOF3- to IIOF0- pins configured as an external interrupt.) A macro showing how to
- generate the IDLE2 opcode is given in Figure 3. During this power-down mode:
-
- No instructions are executed.
- The CPU, peripherals, and internal memory retain their previous state.
- The external bus outputs are idle. The address lines remain in their previous state; the data lines are in
- the high-impedance state; and the output control signals are inactive.
-
- IDLE2 is exited when one of the five external interrupts (NMI- and IIOF3- to IIOF0-) is asserted low for at
- least four input clocks (two H1 cycles). The clocks then start after a delay of two input clocks (one H1
- cycle). The clocks can start in the opposite phase; that is, H1 can be high when H3 was high before the clocks
- were stopped. However, the H1 and H3 clocks remain 180 degrees out of phase with each other.
-
- During IDLE2 operation, an external interrupt can be recognized and serviced by the CPU if it is enabled
- before entering IDLE2 and asserted for at least two H1 cycles. For the processor to recognize only one
- interrupt, the interrupt terminal must be configured for edge-trigger mode or asserted less than three cycles
- in level-trigger mode. Any external interrupt terminal can wake up the device from IDLE2, but for the CPU to
- recognize that interrupt, it must also be enabled. If an interrupt is recognized and executed by the CPU, the
- instruction following the IDLE2 instruction is not executed until after a return opcode is executed.
-
- When the device is in emulation mode, the CPU executes an IDLE2 instruction as if it were an IDLE instruction.
- The clocks continue to run for correct operation of the emulator.
-
-
-
- development tools
-
- A key aspect to a parallel-processing implementation is the development tools available. The 'C44 is supported
- by a host of parallel-processing tools for developing and simulating code easily and for debugging
- parallel-processing systems. The code-generation tools include:
-
- Optimizing ANSI C compiler with a runtime support library that supports use of communication ports and DMA
- Third party support for C, C++, and ADA compilers
- Several operating systems available for parallel-processing support as well as DMA and communication-port
- drivers
- Assembler and linker with support for mapping program and data to parallel processors
-
- The simulation tools include a TI software simulator with a high-level-language debugger interface for
- simulating a single processor. The hardware development and verification tools consist of the XDS510 (
- parallel-processor in-circuit emulator and high-level-language debugger ).
-
-
- Yann
-
-